草庐IT

c++ - JSON 模式验证

全部标签

ruby-on-rails - 在 Rails ActiveRecord 验证期间更改或更新属性值

总结:我正在尝试在自定义ActiveModel::EachValidator验证器中更改属性值。给定以下原型(prototype):defvalidate_each(记录,属性,值)尝试设置value=thing似乎没有做任何事情——我是不是遗漏了什么?应该有一个聪明的方法来做到这一点......详细信息:我接受URL输入作为网站的一部分。我不想只获取URL并直接验证它是否返回200OK消息,因为那样会忽略不是以http开头或离开的条目出前导www等。我有一些自定义逻辑来处理这些错误并遵循重定向。因此,如果用户输入example.org/article而不是http://www.exa

ruby-on-rails - 在 Rails 中是否有比 Observers 更直接的方式来执行发布/订阅模式?

我有一个模型依赖于一个单独的、联合的模型。classMagazine图像是多态的,可以附加到许多对象(页面和文章),而不仅仅是杂志。杂志需要在相关图像发生任何变化时自行更新该杂志还保存了一张自己的截图,可用于宣传:classMagazine现在如果图像发生变化,杂志也需要更新其截图。所以杂志真的需要知道图片什么时候出了问题。所以我们可以天真地直接从封面图片触发屏幕截图更新classImage...但是图片不应该代表杂志做事然而,图片可以用于许多不同的对象,实际上不应该对杂志进行特定的操作,因为这不是图片的责任。该图像也可能附加到页面或文章,并且不需要为它们做各种事情。“正常”的rail

ruby-on-rails - 如何按散列值在 JSON 散列数组中进行搜索?

我正在使用Postgres的JSON数据类型来存储一些信息。例如,我有一个模型User,它有一个字段locations,它包含一个json文档(包含键和值对的对象数组),格式如下:[{"name":"Location1",kind:"house"},{"name":"Location2",kind:"house"},{"name":"Location3",kind:"office"},...{"name":"LocationX",kind:"house"}]我想用.where查询JSON数据类型。我想查询至少有一个位置为kind=office的用户。谢谢!

ruby - Ruby 中的 XSD 模式验证

我找到了几个关于如何根据模式验证xml文档的来源,但我有一个ruby​​应用程序,我需要在其中验证用户提供的模式本身是否是有效的模式。有没有办法让我检查这个?是否有用于验证XSD架构的XSD架构?或者是否有图书馆或gem可以为我做到这一点? 最佳答案 您可以使用Nokogiri为此:beginschema=Nokogiri::XML::Schema(File.read('invalid_schema.xsd'))rescueNokogiri::XML::SyntaxError=>eputs"InvalidXMLSchema!"end

ruby-on-rails - 2个字段之间的rails presence条件验证

这里是第一个Rails程序。我想比要求更进一步,例如,允许地址簿中的条目接受名字或姓氏或两者。换句话说,我想首先或最后验证validate_presence_of,并且只有在两者都缺失时才抛出异常,这在C++中是一件super简单的事情,但语法在Ruby中是什么样子的呢? 最佳答案 如果first_name为空,您不能运行条件验证last_name的存在吗?如果名字不为空,则不会运行验证,但如果为空,则确保姓氏也不为空...validates:last_name,:presence=>true,:if=>"first_name.bl

ruby-on-rails - Rails 以 JSON 格式返回所有 404 和 500 错误

我是Rails的新手,正在使用Rails4。在我的应用程序中,我想返回所有JSON格式的404和500错误{"status":404,"message":"notfound"}有一个简单的方法可以做到这一点吗?因为我只是找到了使用rails3.x执行此操作的解决方案。谢谢我正在尝试执行此解决方案NeedtoreturnJSON-formatted404errorinRails但我在故障安全响应期间收到错误:未初始化的常量ErrorsController 最佳答案 也许您正在寻找这个:render:json=>@error_objec

ruby-on-rails - 安装json(1.8.3)时出错,Bundler无法继续。在 Ubuntu 上

在ubuntu14.04上安装jsongem失败安装带有native扩展的json1.8.3Gem::Ext::BuildError:ERROR:Failedtobuildgemnativeextension./home/sumeruadmin/.rvm/rubies/ruby-2.2.3/bin/ruby-r./siteconf20150910-31195-1cx4b0u.rbextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR="compilinggenerator.clinkingshared-objectjson/e

ruby - 在 ruby​​ 中验证电话号码

验证北美电话号码的规则是什么?另外,有没有我可以使用的regex?有gem可以做到这一点吗?这里有几条我想到的规则一个10位数字没有特殊字符正数 最佳答案 有很多gem可以为您做到这一点。看看:http://rubygems.org/search?utf8=%E2%9C%93&query=phone+number这个看起来会满足您的需要——它实际上实现了一个正则表达式来验证电话号码:http://rubygems.org/gems/validates_phone_number对于美国、加拿大(百慕大、巴哈马...等和所有+1号码),

ruby - 在 OSX 10.8.4 上使用无法识别的选项 '-arch' 安装 json-1.8.0 时 make 失败

我正在尝试正确设置我的ruby​​环境,但在尝试bundleinstall我的测试应用程序时不断收到错误。我在尝试bundleinstall时第一次遇到错误:$railsnewapp//[...]runbundleinstallFetchinggemmetadatafromhttps://rubygems.org/..Resolvingdependencies...Usingrake(10.1.0)Usingi18n(0.6.5)Usingmulti_json(1.7.9)Usingactivesupport(3.2.9)Usingbuilder(3.0.4)Usingactivemo

ruby-on-rails - Rails 如何在渲染 json 时更改属性名称?

在我的Controller中我有:@pakkes=Pakke.where("navnlike?","%#{params[:q]}%")respond_todo|format|format.html#index.html.erbformat.xml{render:xml=>@pakkes}format.json{render:json=>@pakkes.map(&:attributes)}end如何在渲染JSON时将属性navn更改为name? 最佳答案 您可以使用Pakke中的一行方法完成此操作:defas_json(*args)s